home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Hyper / Me-Mz / ModiFone.cpt / ModiFone / stack.txt < prev   
Text File  |  1987-10-05  |  6KB  |  177 lines

  1. -- stack: in
  2. -- format: 8 (HyperCard 1)
  3. -- flags: 0x4000 (can't delete)
  4. -- protect password hash: 0
  5. -- maximum user level: 5 (scripting)
  6. -- window: Rect(x1=0, y1=0, x2=0, y2=0)
  7. -- screen: Rect(x1=0, y1=0, x2=0, y2=0)
  8. -- card dimensions: w=0 h=0
  9. -- scroll: x=0 y=0
  10. -- background count: 1
  11. -- first background id: 2792
  12. -- card count: 1
  13. -- first card id: 3477
  14. -- list block id: 2056
  15. -- print block id: 0
  16. -- font table block id: 0
  17. -- style table block id: 0
  18. -- free block count: 0
  19. -- free size: 0 bytes
  20. -- total size: 14656 bytes
  21. -- stack block size: 5120 bytes
  22. -- created by hypercard version: 0x00000000
  23. -- compacted by hypercard version: 0x00000000
  24. -- modified by hypercard version: 0x00000000
  25. -- opened by hypercard version: 0x00000000
  26. -- patterns[0]: 0x0000000000000000
  27. -- patterns[1]: 0x0000220000002200
  28. -- patterns[2]: 0x8800220088002200
  29. -- patterns[3]: 0xCC003300CC003300
  30. -- patterns[4]: 0xCC883322CC883322
  31. -- patterns[5]: 0xEE88BB22EE88BB22
  32. -- patterns[6]: 0xEECCBB33EECCBB33
  33. -- patterns[7]: 0xFFCCFF33FFCCFF33
  34. -- patterns[8]: 0xFFEEFFBBFFEEFFBB
  35. -- patterns[9]: 0xFFFFFFBBFFFFFFBB
  36. -- patterns[10]: 0x8010022001084004
  37. -- patterns[11]: 0xFFFFFFFFFFFFFFFF
  38. -- patterns[12]: 0x8822882288228822
  39. -- patterns[13]: 0x1122448811224488
  40. -- patterns[14]: 0xC4800C6843023026
  41. -- patterns[15]: 0xB130031BD8C00C8D
  42. -- patterns[16]: 0xAA00AA00AA00AA00
  43. -- patterns[17]: 0x8822552288225522
  44. -- patterns[18]: 0x8855225588552255
  45. -- patterns[19]: 0x77DD77DD77DD77DD
  46. -- patterns[20]: 0x8000000000000000
  47. -- patterns[21]: 0xAA55AA55AA55AA55
  48. -- patterns[22]: 0x038448300C020101
  49. -- patterns[23]: 0x8244394482010101
  50. -- patterns[24]: 0x8814224188412214
  51. -- patterns[25]: 0x8080413E080814E3
  52. -- patterns[26]: 0x22048C7422179810
  53. -- patterns[27]: 0xBE808808EB088880
  54. -- patterns[28]: 0x25C8328964244C92
  55. -- patterns[29]: 0xA29C41BE2AC914EB
  56. -- patterns[30]: 0x40A00000040A0000
  57. -- patterns[31]: 0x8040200002040800
  58. -- patterns[32]: 0xAA00800088008000
  59. -- patterns[33]: 0xFF80808080808080
  60. -- patterns[34]: 0x081C22C180010204
  61. -- patterns[35]: 0xFF808080FF080808
  62. -- patterns[36]: 0xF87422478F172271
  63. -- patterns[37]: 0xBF00BFBFB0B0B0B0
  64. -- patterns[38]: 0xFF7FBE5DA2418000
  65. -- patterns[39]: 0xFAF5FAF5A050A050
  66. -- checksum: 0x0
  67. ----- HyperTalk script -----
  68.  
  69. -- two dashes denote comments, ignored by HyperTalk
  70. -- ModiFone Script
  71. on idle
  72.   if the short time ‚↠field "loc time" then
  73.     put the short time into field "loc time"
  74.   end if
  75.   pass idle
  76. end idle
  77.  
  78. on openStack
  79.   global dialNumber, dialArea, HoldAreaCode
  80.   -- dialNumber is the thing the modem calls
  81.   -- dialArea is the area code added to dialNumber
  82.   -- HoldAreaCode is a global variable which carries the area code
  83.   -- from the Area Code Stack over to here.
  84.   -- I could have just used DialArea but the script uses it for some
  85.   -- other functions.
  86.   put empty into field "long dist preamble"
  87.   put empty into msg
  88.   show message box
  89.   put HoldAreaCode into field "long dist preamble"
  90.   -- this field is Dial For Long Distance
  91. end openStack
  92.  
  93. on Open Stack...
  94.   put empty into HoldAreaCode
  95.   doMenu
  96. end Open Stack... -- this flushes the area code if you Open another
  97. -- stack from ModiFone. You can delete this if you
  98. -- want to retain the last area code.
  99.  
  100.  
  101. on dial string
  102.   global dialNumber, dialArea
  103.   put string into dialNumber -- gets the number from the dialog box
  104.   if string is empty then exit dial -- can't dial nothing
  105.  
  106.  
  107.   -- (Comment from Apple stack):
  108.   -- we do not handle international phone numbers correctly
  109.  
  110.   if dialNumber is empty then exit dial -- can't dial nobody
  111.  
  112.   if dialArea contains field "area code"
  113.   then put field "preamble" before dialNumber
  114. else put field "long dist preamble" before dialNumber
  115. -- the script won't let you put your own area code in front of a
  116. -- local number, so it substitutes the thing you need to dial a local
  117. -- outside line
  118.  
  119. put "Now dialing: " & dialNumber -- puts words into msg box
  120.  
  121. if hilite of button "modem (tone dialing)" is true
  122. then send "dial " & quote & dialNumber & quote & " with modem " & quote & "ATS0=0DT" & quote to HyperCard
  123. -- tone dialing routine which I don't quite understand
  124. if hilite of button "modem (pulse dialing)" is true
  125. then send "dial " & quote & dialNumber & quote & " with modem " & quote & "ATS0=0DP" & quote to HyperCard
  126. --  ditto
  127. if hilite of button "speaker (tone dialing)" is true
  128. then send "dial " & quote & dialNumber & quote to HyperCard
  129. -- ditto
  130. put empty -- flushes number. Delete to retain for redialing
  131. put empty into HoldAreaCode -- empties a/c
  132. end dial
  133.  
  134.  
  135. -- all the following is fancy string cleaning stuff that I did not touch
  136.  
  137. on findAreaCode
  138.   global dialArea,dialNumber
  139.   stripNonDigits
  140.  
  141.   if first char of dialNumber is "9" and "-, " contains char 2 of dialNumber then
  142.     put empty into char 1 of dialNumber  -- remove "9"
  143.     stripNonDigits
  144.   end if
  145.  
  146.   get char 2 of dialNumber
  147.   if it is 0 or it is 1 then
  148.     put " " after char 3 of dialNumber
  149.     put first word of dialNumber into dialArea
  150.     put empty into first word of dialNumber
  151.     stripNonDigits
  152.   else put field "area code" into dialArea
  153.  
  154.   stripTrailer
  155. end findAreaCode
  156.  
  157. on stripNonDigits
  158.   global dialNumber
  159.   repeat for the length of dialNumber
  160.     get first char of dialNumber
  161.     if it is in "0123456789" then exit stripNonDigits
  162.     put empty into first char of dialNumber
  163.   end repeat
  164. end stripNonDigits
  165.  
  166. on stripTrailer
  167.   global dialNumber
  168.   repeat for the length of dialNumber
  169.     get last char of dialNumber
  170.     if it is in "0123456789" then exit stripTrailer
  171.     put empty into last char of dialNumber
  172.   end repeat
  173. end stripTrailer
  174.  
  175.  
  176.  
  177.